package com.moli.iov.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.moli.iov.model.dto.req.PageExtend;
import com.moli.iov.sys.model.dto.req.RoleDto;
import com.moli.iov.sys.model.po.Role;
import java.util.List;

/**
 * <p>
 * 角色管理
 * </p>
 *
 * @author zql
 * @since 2019/9/6 9:45
 */
public interface IRoleService extends IService<Role> {

  /**
   *
   * 查询角色列表
   *
   * @param roleDto
   * @return
   */
  List<Role> listRole(RoleDto roleDto);

  /**
   *
   * 分页查询角色列表
   *
   * @param roleDto
   * @return
   */
  PageExtend<Role> listRoleOfPage(RoleDto roleDto);

  /**
   * 增加角色
   * @param roleDto
   * @return
   */
  Long saveRole(RoleDto roleDto);

  /**
   * 修改角色
   * @param role
   * @return
   */
  int updateRoleByRoleId(Role role);

  /**
   * 根据角色id查询角色
   * @param roleId
   * @return
   */
  Role getRoleByRoleId(Long roleId);

  /**
   * 查询角色数量
   * @param roleDto
   * @return
   */
  int getRoleCount(RoleDto roleDto);
}
